package com.rzl.expense.expense.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rzl.expense.common.annotation.Excel;
import com.rzl.expense.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 电费合同报账点关系对象 ele_contractbillaccount
 * 
 * @author expense
 * @date 2025-03-06
 */
public class EleContractbillaccount extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String elebillaccountcontractId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String elecontractId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String billaccountId;

    /** 0 正常关联，4删除审核通过，9 解除关联 */
    @Excel(name = "0 正常关联，4删除审核通过，9 解除关联")
    private Long relationState;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date relationStartdate;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date relationEnddate;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastModifyTime;

    /** 1:展示该记录 */
    @Excel(name = "1:展示该记录")
    private String isShow;

    /** 是否向下共享(1:是，0:否) */
    @Excel(name = "是否向下共享(1:是，0:否)")
    private Long onIsDownshare;

    /** 合同或固化状态 */
    @Excel(name = "合同或固化状态")
    private String onContractState;

    /** 0：非平峰谷单价 1：平峰谷单价 null：包干 */
    @Excel(name = "0：非平峰谷单价 1：平峰谷单价 null：包干")
    private Long onPriceType;

    /** 供电类型 1:直供电 2:转供电 */
    @Excel(name = "供电类型 1:直供电 2:转供电")
    private Integer supplyMethod;

    public void setElebillaccountcontractId(String elebillaccountcontractId) 
    {
        this.elebillaccountcontractId = elebillaccountcontractId;
    }

    public String getElebillaccountcontractId() 
    {
        return elebillaccountcontractId;
    }
    public void setElecontractId(String elecontractId) 
    {
        this.elecontractId = elecontractId;
    }

    public String getElecontractId() 
    {
        return elecontractId;
    }
    public void setBillaccountId(String billaccountId) 
    {
        this.billaccountId = billaccountId;
    }

    public String getBillaccountId() 
    {
        return billaccountId;
    }
    public void setRelationState(Long relationState) 
    {
        this.relationState = relationState;
    }

    public Long getRelationState() 
    {
        return relationState;
    }
    public void setRelationStartdate(Date relationStartdate) 
    {
        this.relationStartdate = relationStartdate;
    }

    public Date getRelationStartdate() 
    {
        return relationStartdate;
    }
    public void setRelationEnddate(Date relationEnddate) 
    {
        this.relationEnddate = relationEnddate;
    }

    public Date getRelationEnddate() 
    {
        return relationEnddate;
    }
    public void setLastModifyTime(Date lastModifyTime) 
    {
        this.lastModifyTime = lastModifyTime;
    }

    public Date getLastModifyTime() 
    {
        return lastModifyTime;
    }
    public void setIsShow(String isShow) 
    {
        this.isShow = isShow;
    }

    public String getIsShow() 
    {
        return isShow;
    }
    public void setOnIsDownshare(Long onIsDownshare) 
    {
        this.onIsDownshare = onIsDownshare;
    }

    public Long getOnIsDownshare() 
    {
        return onIsDownshare;
    }
    public void setOnContractState(String onContractState) 
    {
        this.onContractState = onContractState;
    }

    public String getOnContractState() 
    {
        return onContractState;
    }
    public void setOnPriceType(Long onPriceType) 
    {
        this.onPriceType = onPriceType;
    }

    public Long getOnPriceType() 
    {
        return onPriceType;
    }
    public void setSupplyMethod(Integer supplyMethod) 
    {
        this.supplyMethod = supplyMethod;
    }

    public Integer getSupplyMethod() 
    {
        return supplyMethod;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("elebillaccountcontractId", getElebillaccountcontractId())
            .append("elecontractId", getElecontractId())
            .append("billaccountId", getBillaccountId())
            .append("relationState", getRelationState())
            .append("relationStartdate", getRelationStartdate())
            .append("relationEnddate", getRelationEnddate())
            .append("lastModifyTime", getLastModifyTime())
            .append("updateTime", getUpdateTime())
            .append("isShow", getIsShow())
            .append("onIsDownshare", getOnIsDownshare())
            .append("onContractState", getOnContractState())
            .append("onPriceType", getOnPriceType())
            .append("supplyMethod", getSupplyMethod())
            .toString();
    }
}
